package com.zy.word;

import com.zy.common.enums.NumberEnum;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;

import java.io.Serializable;
import java.util.List;
import java.util.Map;

/**
 * @BelongsProject: SmartBidAI
 * @BelongsPackage: com.zy.word
 * @Author: zhangyan
 * @CreateTime: 2025-09-04  20:43
 * @Description: 招标文件解析上下文信息
 * @Version: 1.0
 */
@Data
@SuperBuilder
@AllArgsConstructor
@NoArgsConstructor
public class WordContent implements Serializable {

    private static final long serialVersionUID = 1L;
    /**
     * 归属机构名称
     */
    private String orgName;
    /**
     * 开标次数
     */
    private String openCount = NumberEnum.ONE.toString();

    /**
     * 评标办法名称
     */
    private String evalMethodName;

    /**
     * 流程指示
     */
    private String processInstructions;
    /**
     * 评标办法分类
     */
    private Map<String, String> classifyMap;

    /**
     * 招标清单
     */
    private List<String> inventoryList;
    /**
     * 要上传的投标文件名称
     */
    private List<String> uploadFileNameList;

    /**
     * 开标参数
     */
    private List<OpenParameter> openParameterList;

    /**
     * 评标流程
     */
    private List<evalProcess> evalProcessList;

    /**
     * 评标算法描述
     */
    private String algorithmDescription;

    public record OpenParameter(String before, String after) {
    }


    public record evalProcess(String nodeName, Integer nodeType, Double score) {
    }

}
